package Negocio;

import Datos.ProblemasBaseDatos;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.Socket;
import java.net.SocketTimeoutException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;

/**
 *
 * @author Marcelo Montaño
 */
public class Problemas {
    
    private String idProblema;
    private String nombreProblema;

    public String getIdProblema() {
        return idProblema;
    }

    public void setIdProblema(String idProblema) {
        this.idProblema = idProblema;
    }

    public String getNombreProblema() {
        return nombreProblema;
    }

    public void setNombreProblema(String nombreProblema) {
        this.nombreProblema = nombreProblema;
    }
    
    public ArrayList grabar() {
        ArrayList respuesta = new ArrayList();
        try {
            ProblemasBaseDatos problemaDB = new ProblemasBaseDatos();
            respuesta.add("true");
            respuesta.add(problemaDB.grabar(this));
//            JOptionPane.showConfirmDialog(null,"Información de usuario almacenada.",
//        "Crear nuevo usuario",JOptionPane.DEFAULT_OPTION,JOptionPane.INFORMATION_MESSAGE,null);
        } catch (SQLException ex) {
            //Logger.getLogger(AspectosFormales.class.getName()).log(Level.SEVERE, null, ex);
//            JOptionPane.showConfirmDialog(null,"ERROR DE INFORMACION",
//              "ERROR DE CLAVE FORANEA",JOptionPane.DEFAULT_OPTION,JOptionPane.ERROR_MESSAGE,null);
            respuesta.add("false");
            respuesta.add("Error:\n" + ex.getMessage());
        }
        return respuesta;
    }

    public void modificar() {
        try {
        ProblemasBaseDatos problemaDB = new ProblemasBaseDatos();
            problemaDB.modificar(this);
            JOptionPane.showConfirmDialog(null,"Información de problema editada.",
        "Editar datos atención de problema",JOptionPane.DEFAULT_OPTION,JOptionPane.INFORMATION_MESSAGE,null);
        } catch (SQLException ex) {
            //Logger.getLogger(AspectosFormales.class.getName()).log(Level.SEVERE, null, ex);
             JOptionPane.showConfirmDialog(null,"ERROR DE INFORMACION",
              "ERROR DE CLAVE FORANEA",JOptionPane.DEFAULT_OPTION,JOptionPane.ERROR_MESSAGE,null);
        }
    }

    public void eliminar() {
        try {
        ProblemasBaseDatos problemaDB = new ProblemasBaseDatos();
            problemaDB.eliminar(this.idProblema);
            JOptionPane.showConfirmDialog(null,"El problema de emergencia a sido eliminado.",
        "Eliminar servicio de atención de emergencia",JOptionPane.DEFAULT_OPTION,JOptionPane.INFORMATION_MESSAGE,null);
        } catch (SQLException ex) {
            //Logger.getLogger(AspectosFormales.class.getName()).log(Level.SEVERE, null, ex);
             JOptionPane.showConfirmDialog(null,"ERROR DE INFORMACION",
              "ERROR DE CLAVE FORANEA",JOptionPane.DEFAULT_OPTION,JOptionPane.ERROR_MESSAGE,null);
        }
    }

    public void buscar() {
        try {
            Problemas aux;
            ProblemasBaseDatos problemaDB = new ProblemasBaseDatos();
            aux = problemaDB.buscar(this.idProblema);
            this.setNombreProblema(aux.getNombreProblema());
            
        } catch (SQLException ex) {
            //Logger.getLogger(AspectosFormales.class.getName()).log(Level.SEVERE, null, ex);
            JOptionPane.showConfirmDialog(null,"INFORMACION NO ENCONTRADA",
                "ERROR",JOptionPane.DEFAULT_OPTION,JOptionPane.ERROR_MESSAGE,null);
        }
    }
}
